The present invention relates to a learning method for a learning apparatus in which teacher data including a set of input and output values is prepared, an output value for the input value of any given teacher data is calculated in accordance with a predetermined calculation method, and the calculation method is adjusted so as to approximate the calculated output value to the output value of the given teacher data, and more particularly to such a learning method in which a learning is interactively advanced to prevent an overlearning, thereby saving the operator's labor. The present invention further relates to a learning method for fuzzy knowledge which can suitably be applied to a general fuzzy inference or reasoning system.
The adjustment of weightings or threshold values in a neural network or the adjustment of membership functions in a fuzzy inference has hitherto been made using a learning apparatus in which teacher data including a set of input and output values for an object to be learned is prepared, an output value for the input value of any given teacher data is calculated in accordance with a predetermined calculation method, and the calculation method is adjusted so as to approximate the calculated output value to the output value of the given teacher data.
In such a learning apparatus, initialization is first made for the number of times of learning, a learning coefficient, etc. prior to the start of learning, as shown in FIG. 2 (see steps 2001 and 2002 in FIG. 2). Namely, in the case of the neural network, the construction of the network is given as an initial value. In the case of the fuzzy inference, the form of a membership function or a rule is given as an initial value. Next, given teacher data is divided into teacher data and verification data and an input value in the teacher data is used to calculate an output value by use of the neural network or the fuzzy inference. This procedure is repeated by the number of teacher data. The-neural network or the membership function is adjusted using an error between the calculated output value and the output value of the teacher data. The above is repeated by the number of times of learning set as the initial value, thereby completing the learning (step 2003).
The judgement about the result of learning is made by the magnitude of the error for the teacher data or the magnitude of an error determined by calculating an output value with no learning but by use of the verification data in lieu of the teacher data (step 2004). If the result of learning is not satisfactory, the flow returns to step 2002 so that the learning is repeated with the initialization being changed.
A learning control apparatus making the adjustment of parameters by use of a fuzzy inference is disclosed by, for example, "Self-Adjusting Fuzzy Controller", Proceedings of the Society of Instrument and Control Engineers, Vol. 24, No. 2 (1984), pp. 191-197 (hereinafter referred to as reference 1).
When the learning is repeated by the method disclosed by the above reference 1, the problem of an overlearning occurs. The overlearning is such that a correct output value is obtained for an input value existing in teacher data but an output value greatly different from an output value of the teacher data regarded by a user as being proper is obtained for an input value which does not exist in the teacher data. In order to avoid this problem, a process including the determination of an initial value, the learning by teacher data and the examination of the result of learning by verification data must be repeated by the user until a satisfactory result of learning is obtained. Therefore, a lot of time and labor is required until the user obtains the satisfactory result of learning.
On the other hand, in a system in which a fuzzy inference is applied, a human knowledge is represented by a rule and a membership function. The represented version is generally called a fuzzy knowledge. The structuring of a fuzzy knowledge, especially, the determination of a membership function has hitherto been made in a trial-and-error manner.
Recently, however, the automatic adjustment of membership functions is reported by, for example, "Securities Investment Expert System Using Fuzzy Inference", Journal of Information Processing Society of Japan, August 1989, pp. 963-969 (hereinafter referred to as reference 2) and "Regarding System for High-Speed Learning of Membership Functions in Fuzzy Inference", Symposium on Micro-Work Stations, Information Processing Society of Japan, Vol. 66-5, May 1991 (hereinafter referred to as reference 3).
In the prior art disclosed by the reference 2, characteristic data is derived from among stock price data and the parameter of a membership function is changed on the basis of a distance from the present membership function parameter and a temporal distance between the instant of time of occurrence of the characteristic data and a learning time so that the parameter of the membership function is conformed to the derived characteristic data.
Also, the reference 3 discloses a membership function learning system based on an extended back propagation method.
The references 1 and 2 describe a method for automatic adjustment of membership functions but do not refer to the selection of a membership function to be learned.
As for a system in which a fuzzy inference is applied, an expert concerning that system exists in many cases. Therefore, on the basis of a know-how acquired from the expert (for example, through an interview with the expert) a fuzzy knowledge is structured which includes rules having their predetermined weightings and membership functions.
However, the fuzzy knowledge thus produced needs adjustment. A method for adjustment is generally classified into a method (1) in which the membership function and the weighting of the rule are automatically adjusted by use of a technique as disclosed by the reference 2 or 3 and a method (2) in which the adjustment is made in such a manner that the expert himself or herself examines the structure of the knowledge, for example, the missing or inconvenience of a rule. The method (1) or (2) is repeatedly applied to adjust the fuzzy knowledge.
A membership function may be regarded as defining the meaning of a proposition used in a rule. There are the case where a user himself or herself has already grasped the meaning of words clearly and the case where a user has not a complete grasp of the meaning of words but a membership function is tentatively defined and is determined in a trial-and-error manner in connection with data. In the former case, a membership function has already been determined upon initial input or the form of a membership is usually determined at an early stage of time even if the test and adjustment of the membership function are made. The similar holds for the setting of the weighting of a rule.
On the other hand, the fuzzy knowledge itself cannot be structured automatically, as is apparent from the adjustment method (2) mentioned above. Namely, the structure of the fuzzy knowledge must be made up or implemented by a user himself or herself.
In the process of automatic adjustment of a fuzzy knowledge, there may be the case where a part of case data having a probability of occurrence is used or the case where specified data is consciously used. In such a case, it is not preferable to automatically change all membership functions and the weightings of all rules.
Further, in the case where a fuzzy knowledge is made up while making interaction with a computer, there is a possibility that a lot of time may be required depending upon an algorithm used for adjustment of parameters of membership function or the like.